package net.csdn.business.kanban.api.entity;

import com.baomidou.mybatisplus.annotation.*;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.io.Serializable;
import java.util.Date;
/**
 * @ClassName KanbanField
 * @Description TODO
 * @Author liuzhisheng
 * @Date 2023/9/14
 **/
@NoArgsConstructor
@AllArgsConstructor
@Data
@TableName("kanban_field")
@Schema(description = "看板字段表")
public class KanbanField implements Serializable {
    @TableId(value = "id", type = IdType.AUTO)
    @Schema(name = "id", description = "字段ID")
    private Long id;

    @TableField(value = "kanban_id")
    @Schema(name = "kanban_id", description = "看板ID")
    private String kanbanId;

    @TableField(value = "field_name")
    @Schema(name = "field_name", description = "字段名称")
    private String fieldName;

    @TableField(value = "field_type")
    @Schema(name = "field_type", description = "字段类型 0:text 1:number 2:date 3:single select 4:iteration")
    private Integer fieldType;

    @TableField(value = "user_defined")
    @Schema(name = "user_defined", description = "是否用户自定义 0:false 1:true")
    private Boolean userDefined;

    @Schema(name="creator_id",description = "创建人ID")
    private String creatorId;

    @Schema(name = "created_at", description = "创建时间")
    @JsonFormat(locale = "zh", timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    private Date createdAt;

    @Schema(name = "updated_at", description = "更新时间")
    @JsonFormat(locale = "zh", timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    private Date updatedAt;

    /** 审核状态 */
    @Schema(name="audit_status",description = "审核状态")
    private Integer auditStatus;
}

